Guardian Legend Rom hacking document by Jigglysaint 154be - which room interior to display for the ring of 8 brown blocks in the centre. 154bf - what block the interior is. Format explain: Following 154bf are 2 values that are used for the pod that gives an item. The first is a tile value and the second is a position. Rooms can be altered from their origional design by this method. The first value, 154be, determins not only the room type, but how many extra tiles to add. $05 is the room that only has 8 blocks. Add $20 and an extra tile will be added. Add another $20 and you get more. Higher values might affect other aspects of the level. So far, it seems that it edits global values for the room, so other rooms that have 8 brown blocks with a pod in the centre will be edited as well. On second look, it seems that each extra block is 2 bytes big. First is block type, then position, and I guess the third is what pattern to use. there are many patterns I suppose, and it seems this is how unique screens are made. I think the maximum amount of extra block structues is 7 or so, but I dunno. 14E6D - direction and area byte for the first room your appear in. The first nybble is for which directions you can go it, and the second is for area number and when it appears on the map. 14e68 - left of the start room. Data explanation: The First byte is the room control byte. Depending on what the first nybble is set to, the room acts a certain way. From memory I know that 0 means nothing, 3 I think is for speical items, 4 is for mini bosses(it appears but there's no room interior). A means a room that you warp to via a panel. The second nybble seems to do somthing to the map, but mostly screws up the map order. Could be compressed. The second byte controls the directions you can walk/warp to, and the area. The first nybble references 16 screen templates, the second has 2 functions depending on which part of the 16 values you use. The first 8(0 to 7) are warp pannel control values. There are 7 keys, with one warp you can activate from start. The second ones, from 8 to F, are just area values. It's possible the data is sort of different than I said because there are 11 areas in the game, but only 8 keys. The next byte seems to control which area you actually enter. This means graphics, music, and other things as well. The last byte is for the value of things like enemies and items. If the value is like 00, then a special item pod will load the item that is currently in memory. This means that if you pass an area with 04 in it, then grab an item with the value 00, it will be the value from 04. In special rooms, the last 2 bytes are a bit different. The thrid byte is what room type it is. The last is for certain values like text in computer rooms and some shops. Corridors arn't defined here but in the previous byte. Corridors start at 80 and keep going, even though only corridors from 0 to 22 are valid(00 just brings you back to the room when you are done, without the corridor beating effect. Massive update! I have figured out what the second nybble of the first byte does! What it does is tell the game how many bytes are in the room. I assume it includes the first byte as well. What this means is that rooms can be resized to allow for placing of structures(which are two byte pointers) in any room, as long as the size is constant and all the values are aligned. This comes at great news because now a substancial edit can be made. I also found out that nybble 1 makes the structure read. My guess is that that first nybble defines which values are present in the room, and the rest defines it. 1FDE7 - chip usage for weapwns. 14A7E - start of map data. 151fa - end of map data. Item values: I suspect that each item has multiple enities and are saved to ram whem obtained. My guess is lower values show up first on the map screen or somthing. Mini boss to face: 00 - 8 way bullet 1 Glitch 01 - Blue Lander 1 Glitch Area 5 02 - Enemy Erasers 1 Glitch Area 6 03 - Enemy Erasers 2 Glitch Area 8 04 - Blue Lander 2 Glitch Area 8 05 - Red Lander 1 Glitch Area 0 06 - Shield 1 Glitch Area 9 07 - Energy Tank 1 Green Crabbot Area 9 08 - Enemy Erasers 3 Glitch Area 9 09 - Energy Tank 2 Somthing dies and pod appears Area 10 0A - Energy Tank 3 Nothing shows up and after a while the pod appears Area 6 0B - Bullet Shield 1 Green Crabbot Area 0 0C - Blue Lander 3 Spider Worm Area 0 0D - Fireball 1 Green Crab Area 1 0E - Red Lander 2 Blue Crabbot Area 1 0F - Gun 1 Blue Crab Area 2 10 - Red Lander 3 Blue Crabbot Area 2 11 - Enemy Erasers 4 Spider Worm Area 3 12 - Shield 2 Evil Hairy Thing Area 3 13 - 8 way bullets 2 Blue Crabbot Area 4 14 - Gun 2 Evil Blue Molestor Area 4 15 - Sonic Wave 1 Blue Crabbot Area 5 16 - Shield 3 Giant Ice Crystal of Dooom Area 5 17 - Shield 4 Spider Worm(level of toughness depends on level number) Area 6 18 - Red Lander 4 Red Crab Area 6 19 - Grenade 1 Spider Worm Area 7 1A - Shield 5 Red Crab Area 7 1B - Red Lander 5 Very Evil Red Molestor Area 8 1C - Enemy Erasers 5 Red Crabbot Area 8 1D - Sonic Wave 2 Red Crabbot Area 9 1E - Blue Lander 4 Spider Worm Area 9 1F - Shield 6 Skull Head, needs to be in area 10 to look right Area 10 20 - Enemy Erasers 6 Glider Bot Area 10 21 - 8 way bullets 3 Glitchy. Part of Clawbot appears along with the pod, Guardian becomes glitchy Area 0 22 - 8 way bullets 4? 23 - 2 Way Sabre laser 1 Area 1 24 - Rear Sonic Wave 1 Area 1 25 - Blue Lander 5 Area 2 26 - Energy Tank 4 Area 1 27 - Rapid Fire 1 Area 3 28 - Red Lander 6 Area 4 29 - Blue Lander 5 Area 4 2A - 2 War Sabre laser 2 Area 4 2B - Bullet Shield 2 Area 5 2C - Grenade 2 Area 5 2D - 8 way bullets 5 Area 6 2E - Fireball 2 Area 6 2F - Repeller(need to think of a name that wasn't thought up by another person) Area 7 30 - Shield 7 Area 7 31 - Energy Tank 5 Area 8 32 - Enemy Erasers 7 Area 8 33 - Blue Lander 6 Area 9 34 - Red Lander 7 Area 9 35 - Rapid fire 2 Area 0 36 - Rapid Fire 3 Area 2 37 - Hyper Laser 1 Area 4 38 - Hyper Laser 2 Area 8 39 - Sabre Laser 1 Area 0 3A - 8 way bullets 6 3B - Rear Sonic Wave 2 3C - Sonic Wave 3 3D - Bullet Shield 3 3E - Grenades 3 3F - 8 way bullets 7 40 - Rear Sonic Wave 3 41 - Sonic Wave 4 42 - Bullet Shield 4 43 - Grenades 4 44 - End of list? 45 - Warp panel that changes music 46 - 4D - Blue Chip 4F - Bullet Shield 5 50 - Will list only useful stuff from now on 58 - 2 way Sabre Laser 3 5A - Homing Bullets 1 5F - Rear Sonic Wave 4 62 - Repeller 2 69 - Another 8 way bullet 6B - Red Chip, but also gives level 2 fireball Some of these glitched items seem to give weapons 6D - Heart, but also elvel 2 homing bullets 80 - Real Heart Corridore items could possible be those extra 8 way bullets because there doesn't seem to be a third fireball, any homing bullets, a third Hyper Laser, and other things. Message values: 00 - Intro message 01 - Weapons master message 02 - Master Sealer(no he isn't the prophet :D ) 03 - Intro to shops 04 - Passsword Message 05 - The word Coridor, used in coridors 06 - Single shop message 07 - triple shop message 08 - Good Luck! 09 - Any Luck! 0A - Corridor 4 unsealing message 0B - 2nd seal solution 0C 0D 0E 0F 10 11 12 13 - In order, the seal puzzle solutions for the seals, with 13 being the 10th 4230 - drop table. 0B is enemy Erasers, 0C is an energy tank, and 14 15 and 16 are for the chips and hearts and stuff. Item Shop values, single: 00 - Sonic Wave 50 chips 01 - Glitched shop 02 - Glitched shop 0B - Repeller 500 chips 13 - Another Sonic Wave, 50 chips 15 - Rear Sonic Wave, 150 chips 19 - Hyper Laser 300 chips 1D - Another Rear Sonic wave 150 chips These Values seem to be the actual shops 38 - Fireball with a weird chip value 3A - Correct Sonic Wave Shop, 50 chips 3B - Homing Bullet shop 3C - Rear Sonic Wave, 150 Chips, 3D - Repeller, 500 chips 3E - Hyper Laser, 300 chips 3F - Repeats 16077 - start of shop prices and contents 1EF51 - start of the items you get for finishing a corridor. Level data: The data format is kind of easy to figure out, well sorta. First of all, there is a template reference number, which is values from 00 to 1F. The second byte is the tile number. The data that follows depends on the first byte. Basically, add $20 to the first byte and it reads the next 3 bytes after the tile value byte as extra level data. The format for this data is tile value, screen position, and block amount and direction. The first 4 bits are how many blocks, up to 4 can be placed this way. My guess is that the other bits are the direction. I found that 5 makes up to 4 blocks going from left to right, and 8 is from top to bottom. Diagonals are included, and often used. Another update, it seems that there are up to 6 bits used for blocks, and the last 2 are directional. Bits 6 and 7, if both set to 00, means tiles are arranged diagonally from left to right. If it's set to 01, then the tiles are horizontal. 10 means vertical, and 11 means diagonal from right to left. Pointers are easy to figure out as well. Many rooms seem to use 94 as the second pointer byte. Well this means that in the area where the data is, which is like 15400 or so, the 4 in the offset is part of the 95. Change it to 500 and it's referencing 256 bytes ahead. Dunno about the 9 though. Now the other byte is the location in this 256 byte of data, minus $16 because of the rom header. So Be would become AE when searching for it. Second update: After looking at another game, Metal Gear, it seems that pointers are very predictable. First of all, the second byte is almost always $8*, * = how many pages from the start of the rom bank. Lets say that the bank for the level data starts at 15010. A pointer that would point to that would look like this: 00 80(keep the header in mind). Now if you change the second byte to $81, the offset would look like this: 15110. Change the byte to $90 and it would look like this: 16010. Now the first byte references the position on a page, from 00 to FF. Let's take the first pointer again: $00 80 Change the first byte to 47. What this means is the value becomes 15057, remembering to add the header after caclulating the pointer. It's really easy and seems to be common in several nes games. 18748 - possibly how many hits a weapon can absorb untill it dissappears(level 3), 2 and 1 must be before that. 18753 - Speed of weapons, first 11 bytes are for level 1 weapons, and so forth for the 3 levels.. 16077 - start of shop prices and contents 87e4 - chip max and red lander increase, 2 bytes each. 163c0 - what item is attributed to item value 3A(first saber laser) 166b3 - miniboss index for item 0B 1ef3a - music for corridor 0 1ef26 - start of the music data 1ef51 - corridor items 1ef65 - graphics for each corridor 1605e - start of triple item shops. Tile values: 00 - glitched floor 01 - strong yellow block 02 - strong yellow block 2(possibly created after an item pod is taken) 03 - weak block 04 - closed chip pod 05 - open chip pod 06 - special item pod 07 - unshootable pod 08 - blue block with no warp pannel 09 - red indestructable block 0a - broken yellow block 0b - warp pannel 0c - green block 0d - blank space 0e - ground target with a warp pannel 0f - glitched 10 - glitched Room values 00 - empty 01 - left arrow 02 - right arrow 03 - up arrow 04 - down arrow 05 - box 06 - group of four rectangles with one block missing from each 07 - group of lines with 3 tiles in each 08 - group of 3 tiles arranged in an incomplete box 09 - left area enterence structure 0a - right area structure 0b - up area structure 0c - down area structure 0d - left corridor enterence 0e - right corridor enerence 0f - up corridor enterence 10 - down corridor enterence 11 - big chip room in area 0 12 - group of several boxes 13 - overlaps level data, can be added if level data is adjusted/erased 14 - 1f same There is more data, as I have not begun to figure out the corridor data, but stay posted.